Telecommunications systems known as "Intelligent Networks" (IN) or "Advanced Intelligent Networks" (AIN) employ Signalling System No. 7 (SS7) which was adopted by the International Consultative Committee for Telephone and Telegraph (CCITT). Signalling system No. 7 messages are exchanged between network elements to deploy selected services and to set up and route calls. The messages are passed by an out-of-band signalling system which is separate from the trunks which carry the calls themselves. For an overview of SS7, the reader is directed to an article, "Signalling System No. 7: A Tutorial" by A. R. Modarressi and R. A. Skorg, IEEE Communications Magazine, July 1990, which is incorporated herein by reference.
For general information about intelligent network components and their operation, the reader is directed to U.S. Pat. Nos. 5,581,610 and 5,438,568, which are incorporated herein by reference, and to the various accepted or proposed intelligent networks standards documents including:
TR-NWT-001284 AIN 0.1 SSP Generic requirements PA1 TR-NWT-001285 AIN 0.1 SCP interface PA1 GR-1298-CORE AIN 0.2 Generic requirements PA1 GR-1299-CORE AIN 0.2 SCP interface. PA1 (i) message transfer means for routing signalling messages between the switching units and the service processor according to point codes in such messages storing a copy of each signalling message transmitted to said service processor, each copy message with an identifier specific to an originating call, and receiving from the service processor response signalling messages having corresponding identifiers; PA1 (ii) means for monitoring the message transfer means and timing predetermined time intervals each commencing when a respective one of the signalling messages is transmitted and, if a response signalling message having an identifier corresponding to a particular identifier is detected within said predetermined time interval, causing said message transfer means to delete the stored copy message, but if no corresponding response signalling message with an identifier corresponding to said particular identifier is received within said predetermined time interval, causing said message transfer means to reference the stored copy of the message, change the destination point code to that of an alternative service processor, and route the changed message to that alternative service processor. PA1 (i) routing signalling messages between the switching units and the service processor according to point codes in such messages; PA1 (ii) setting a timer means, upon transmission of a message to the service processor, for timing a predetermined time interval following transmission of each signalling message to the service processor; PA1 (iii) storing a copy of each signalling message transmitted to said service processor, each copy message with an identifier specific to the originating call; PA1 (iv) monitoring in response signalling messages received from said service processor that include corresponding identifiers and detecting said corresponding identifiers, and; PA1 if a said corresponding identifier corresponding to the identifier of a particular stored message is detected in a response signalling message within said predetermined time interval, deleting the stored copy message, but PA1 if a said corresponding identifier corresponding to the identifier of said particular stored message is not detected within said predetermined time interval, retrieving the stored copy of the message, changing the destination point code to that of an alternative service processor, and routing the changed message to that alternative service processor.
The main elements of such intelligent networks include Service Switching Points (SSPs), Signal Transfer Points (STPs) and Service Control Points (SCPs) connected to each other by SS7 data links for carrying signalling. All of these elements have similar Message Transfer Part (MTP) and Signalling Connection Control Part (SCCP) communications software to enable them to communicate with each other via the SS7 data communications network. A Service Control Point is an "intelligence centre" with specific logic and access to application databases enabling it to deliver various combinations of features, such as 1-800 number service and call redirection. A Signal Transfer Point (STP) is a signalling hub or concentrator, typically connecting several Service Switching Points to an SCP. A Service Switching Point (SSP) is a network node normally associated with a stored program central office switch equipped with Signalling System Number 7 (SS7) messaging links to permit communication with the SCPs and which, in addition to the usual call processing software, has special Service Signalling Function (SSF) software. The SCP has comparable Service Control Function (SCF) software.
The Service Signalling Functions include (i) Transaction Capabilities Application Part (TCAP) messaging, which SSPs and SCPs use to determine how to process a particular call, and (ii) Integrated Services User Part and Capability (ISDNUP) messaging which the SSP switches use to set up a path for a particular call once it has been determined whence the call should be routed.
The SSP's AIN software includes a plurality of "Point-in-Call triggers" which can be provisioned or set to interrupt call processing momentarily and initiate a TCAP query to the SCP for instructions on how to complete the call processing. Based upon the instructions received in a TCAP message in reply, the originating end office switch seizes a trunk to a neighbouring switch and creates an Initial Address Message which it sends to the neighbouring switch via the SS7 network. The Initial Address Message includes various parameters which will control routing of the call to its destination.
The SCP is identified within the network by a Point Code (PC). When issuing a TCAP message, the SSP will include in the header (as the Destination Point Code (DPC)) the PC of the SCP to which it is to be sent and its own Point Code as the Originating Point Code (OPC). Usually, the message will be relayed by way of a Signal Transfer Point (STP). The Message Transfer Part (MTP) module of the STP will simply detect the DPC and choose a corresponding outgoing link to the SCP. The STP will monitor its links continuously. If the link to the SCP is unavailable for some reason, the STP will simply return a "link failure" message to the originating SSP and the call will not complete. The SSP will not attempt to query the SCP again until it receives a "link restored" message from the STP.
At present, the SSP will attempt to complete a call based upon the usual dialled digit translation using its own routing tables and only query the SCP if an AIN Point-in-Call trigger is encountered. With the increasing use of services like Local Number Portability (LNP), it is being proposed to have the digit translation for all calls done by the SCP before the call is routed. Hence, every call will require a TCAP query to an SCP for routing. This increasing traffic in the SS7 system could lead to congestion.
It is known to provide a "hot spare" for each STP so as to reduce the likelihood of a TCAP message not reaching the SCP. It is also known to interconnect a group of STPs so as to provide a limited form of alternate routing. If a TCAP query via one STP "times out", it can be routed to an alternative STP in the group. Cross connection of this group of STPs and duplication of links between the STP group and the SCP provide a certain amount of redundancy and reliability. It is still conceivable though that the links to the SCP could go down or overload and even that the processor in the SCP could overload.
The risk is even greater if a major emergency occurs, such as a natural disaster. In such circumstances, it is desirable for certain minimum communications to be maintained so as to ensure that essential services can be maintained. This entails maintaining communications with firefighting and medical teams, and the media, so that the government can communicate with the public.
A protocol for dealing with SCP overload has been proposed in Bellcore's AIN 0.1 SCP applications protocol TR-NWT-001284 issued 1 Aug. 1992, specifically at pages 2-164, item 2.10.7.1. In particular, Bellcore proposed that, when an SCP overloaded, it would send to the requesting SSP an Automatic Code Gapping (ACG) message which effectively would invite the SSP to increase the delay between subsequent TCAP requests for a certain duration. On receipt of an ACG message, the SSP would save a six digit code on a control list and start "gap" and "control duration" timers.
This approach is not entirely satisfactory because, in extreme overload conditions, the SSP itself can start to overload because it is having to store these six-digit codes and use the call gapping controls. In addition, the SCP would have to start transmitting ACG messages before it completely overloaded; otherwise it would not be capable of doing so. Hence, it would need some means for monitoring its CPU and initiating the sending of the ACG messages before it reached its capacity, perhaps at 80% or so. The SCP would already be over burdened and in danger of overloading. The additional monitoring, and the generation and sending of ACG messages, would add to that burden instead of taking away from it. Once the SCP overloaded, the SSPs would also be in danger of overloading because they have limited capacity to delay messages.
An object of the present invention is to mitigate the above-identified deficiencies and provide an improved way of dealing with overloading of an SCP or lack of availability of links to the SCP.